#pragma once
#include "GameObject.h"

class Block;
class Sell : public GameObject
{
protected:
	Block* _haveBlock;
public:
	Sell();
	~Sell(void);
	virtual void passBlock(Sell*);
	void giveBlock(Block*);
	Block* getBlock(){return _haveBlock;}
	Block* popBlock();
	bool existBlock();
	void draw();
	void update();
	void setPosition(Vector3f p);
	virtual bool isSpecialBlock(){return true;}
	virtual bool isSpecialSell(){return true;}
};


class NormalSell : public Sell
{
private:

public:
	NormalSell();
	bool isSpecialBlock(){return false;}
	bool isSpecialSell(){return false;}
};


class StopSell : public Sell
{
private:
public:
	StopSell();
	void passBlock(Sell* s);
};


class WayChangeSell : public Sell
{
private:
public:
	WayChangeSell();
	void passBlock(Sell* s);
};

class WayChangeTopSell : public Sell
{
public:
	WayChangeTopSell();
	void passBlock(Sell* s);
};